#include<iostream>
#include<cmath>
using namespace std;
typedef unsigned long long ull;
bool fun2(ull n){//素数判断
    int k=sqrt(n);
    for(int i=2;i<=k;i++)
        if(n%i==0)return false;
    return true;
}
int fun1(ull n){//因子统计
    if(n<2)return n;
    if(n%2==1&&fun2(n))
        return 2;
    ull t=n;
    int s=0;
    for(ull i=1;i<t;i++)
        if(n%i==0){
            t=n/i;
            cout<<i<<" "<<t<<endl;
            if(t==i)
                s++;
            else s+=2;
        }
    return s;
}
int main(){
    cout<<fun1(18446744073709551600)<<endl;
    return 0;
} // namespace std;
